package cn.iocoder.an.module.mold.controller.admin.keeptask.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Schema(description = "管理后台 - 保养任务新增/修改 Request VO")
@Data
public class KeepTaskSaveReqVO {

    @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "28301")
    private Long id;

    @Schema(description = "待保养ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "30048")
    @NotNull(message = "待保养ID不能为空")
    private Long waitId;

    @Schema(description = "设备id", requiredMode = Schema.RequiredMode.REQUIRED, example = "24869")
    @NotNull(message = "设备id不能为空")
    private Long equipmentId;

    @Schema(description = "开始时间")
    private LocalDateTime startTime;

    @Schema(description = "结束时间")
    private LocalDateTime endTime;

    @Schema(description = "审核人ID", example = "17391")
    private List<Long> reviewerId;

    @Schema(description = "审核人名称", example = "赵六")
    private String reviewerName;

    @Schema(description = "待保养大类ID", example = "21729")
    private Long itemId;

    @Schema(description = "待保养明细ID", example = "22032")
    private String itemSubId;

    @Schema(description = "已完成的保养明细ID")
    private List<Long> itemSubComplete;

    @Schema(description = "补充说明", example = "随便")
    private String description;

    @Schema(description = "派工时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private LocalDateTime acceptTime;

    @Schema(description = "是否合格1是2否", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer pass;

    @Schema(description = "审核备注", requiredMode = Schema.RequiredMode.REQUIRED)
    private String remark;

    private List<String> files;


}